package org.lanqiao.tjut.action;

import java.io.File;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import org.lanqiao.tjut.bean.StudentBean;
import org.lanqiao.tjut.myUtils.MyUtils;

import com.alibaba.fastjson.JSON;
import com.opensymphony.xwork2.ActionSupport;

public class StudentInfoAction extends ActionSupport {

	private static final long serialVersionUID = 1L;

	////////文件上传相关成员变量/////////
	// file类型的变量，获取文件流对象;变量的名字需要和file文件控件的name属性保持一致
	private File stuImg;
	// 文件名，命名规则是： File的变量名+FileName后缀；
	private String stuImgFileName;
	// 文件MIME类型,命名规则是：File的变量名+ContentType后缀
	private String stuImgContentType;
	////////文件上传相关成员变量/////////	
	
	/**
	 * ajax返回内容的属性对象
	 */
	private String ajaxContent;

	/**
	 * 与新增表单映射的实体属性对象
	 */
	private StudentBean stuB;

	/**
	 * 新增或修改学生信息
	 * 
	 * @return
	 */
	public String saveOrUpdateStuInfo() {
		System.out.println("新增学生信息：" + stuB.toString());
		System.out.println("File:"+stuImg);
		System.out.println("FileName:"+stuImgFileName);
		System.out.println("FileContentType:"+stuImgContentType);
		
		// 调用文件上传公用方法
		MyUtils.uploadMultiFile(stuImg,stuImgFileName,stuImgContentType,stuB,"uploadfiles/stuImgs/","stuImg","stuImg");
		// 文件上传之后的实体对象内容
		System.out.println("文件上传之后的实体对象内容：" + stuB.toString());
		
		// TODO 业务逻辑处理
		
		return SUCCESS;
		
	}

	/**
	 * ajax响应处理
	 * 
	 * @return
	 */
	public String ajaxQueryAllStuInfo() {
		// TODO 学生信息查询业务逻辑处理
		// 构造查询到的学生信息结果集
		List<StudentBean> lstStus = new ArrayList<>();
		StudentBean stu01 = new StudentBean();
		stu01.setStuAddress("天津理工");
		stu01.setStuBirthday(new Date());
		stu01.setStuDepartment(1L);
		stu01.setStuName("小明");
		stu01.setStuSex("男");
		stu01.setStuTel("13789076543");
		stu01.setStuImg("commentResources/uploadfiles/stuImgs/stuImg_a98c8c7d-8c5f-41fe-a6be-9e691f26239c.jpg");
		lstStus.add(stu01);
		// 将查询结果转换为json对象
		String strJson = JSON.toJSONStringWithDateFormat(lstStus, "yyyy/MM/dd HH:mm:ss");
		// 将json的内容赋值给ajax的属性对象
		this.setAjaxContent(strJson);
		return SUCCESS;
	}

	public StudentBean getStuB() {
		return stuB;
	}

	public void setStuB(StudentBean stuB) {
		this.stuB = stuB;
	}

	public String getAjaxContent() {
		return ajaxContent;
	}

	public void setAjaxContent(String ajaxContent) {
		this.ajaxContent = ajaxContent;
	}

	public File getStuImg() {
		return stuImg;
	}

	public void setStuImg(File stuImg) {
		this.stuImg = stuImg;
	}

	public String getStuImgFileName() {
		return stuImgFileName;
	}

	public void setStuImgFileName(String stuImgFileName) {
		this.stuImgFileName = stuImgFileName;
	}

	public String getStuImgContentType() {
		return stuImgContentType;
	}

	public void setStuImgContentType(String stuImgContentType) {
		this.stuImgContentType = stuImgContentType;
	}


	
}
